Работаем со старым.
void main()
{
RASENTRYNAME rasentry[20];
DWORD dSize,dNumber;
dSize = sizeof(rasentry);
rasentry[0].dwSize = sizeof(RASENTRYNAME);
if( RasEnumEntries(NULL,NULL,rasentry, &dSize, &dNumber ) == 0 )
{
for (DWORD x=0; x < dNumber;x++)
{
cout << rasentry[x].szEntryName << endl;
}
}
getch();
}
Сейчас мы получим точки входа. То есть как можно установить удаленное соединение. Этот список есть в удаленном доступе. У меня он выглядит так:

Опять массив для заполения. И размер его - это уже знакомо. А вот в функции, есть изменения.
RasEnumEntries - первый параметр зарезервирован и должен быть NULL. Вообще при программировании в Windows это встречается очень часто. Чего-то там зарезервировано. В будущем это будет использовано. А второй параметр в Windows 95 игнорируется и должен быть NULL. Вот такая история :-).
Технология остальной части объяснена в других шагах. Запускайте. У Вас появится список точек входа. У меня было так:
Jana
Можете создать новые соединения и попробовать. Работает. Мы всё ближе и ближе к установке соединения.
Создайте массив для получения информации
RASENTRYNAME rasentry[20];
Вызовите функцию, незабыв, что первые два параметра игнорируются.
RasEnumEntries(NULL,NULL,rasentry, &dSize, &dNumber )